package com.anolesoft.yr.mbus.cont.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class ContListExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ContListExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andObjuidIsNull() {
            addCriterion("objuid is null");
            return (Criteria) this;
        }

        public Criteria andObjuidIsNotNull() {
            addCriterion("objuid is not null");
            return (Criteria) this;
        }

        public Criteria andObjuidEqualTo(String value) {
            addCriterion("objuid =", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidNotEqualTo(String value) {
            addCriterion("objuid <>", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidGreaterThan(String value) {
            addCriterion("objuid >", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidGreaterThanOrEqualTo(String value) {
            addCriterion("objuid >=", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidLessThan(String value) {
            addCriterion("objuid <", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidLessThanOrEqualTo(String value) {
            addCriterion("objuid <=", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidLike(String value) {
            addCriterion("objuid like", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidNotLike(String value) {
            addCriterion("objuid not like", value, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidIn(List<String> values) {
            addCriterion("objuid in", values, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidNotIn(List<String> values) {
            addCriterion("objuid not in", values, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidBetween(String value1, String value2) {
            addCriterion("objuid between", value1, value2, "objuid");
            return (Criteria) this;
        }

        public Criteria andObjuidNotBetween(String value1, String value2) {
            addCriterion("objuid not between", value1, value2, "objuid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidIsNull() {
            addCriterion("prod_product_uid is null");
            return (Criteria) this;
        }

        public Criteria andProdProductUidIsNotNull() {
            addCriterion("prod_product_uid is not null");
            return (Criteria) this;
        }

        public Criteria andProdProductUidEqualTo(String value) {
            addCriterion("prod_product_uid =", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidNotEqualTo(String value) {
            addCriterion("prod_product_uid <>", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidGreaterThan(String value) {
            addCriterion("prod_product_uid >", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidGreaterThanOrEqualTo(String value) {
            addCriterion("prod_product_uid >=", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidLessThan(String value) {
            addCriterion("prod_product_uid <", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidLessThanOrEqualTo(String value) {
            addCriterion("prod_product_uid <=", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidLike(String value) {
            addCriterion("prod_product_uid like", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidNotLike(String value) {
            addCriterion("prod_product_uid not like", value, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidIn(List<String> values) {
            addCriterion("prod_product_uid in", values, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidNotIn(List<String> values) {
            addCriterion("prod_product_uid not in", values, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidBetween(String value1, String value2) {
            addCriterion("prod_product_uid between", value1, value2, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andProdProductUidNotBetween(String value1, String value2) {
            addCriterion("prod_product_uid not between", value1, value2, "prodProductUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidIsNull() {
            addCriterion("cont_main_uid is null");
            return (Criteria) this;
        }

        public Criteria andContMainUidIsNotNull() {
            addCriterion("cont_main_uid is not null");
            return (Criteria) this;
        }

        public Criteria andContMainUidEqualTo(String value) {
            addCriterion("cont_main_uid =", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidNotEqualTo(String value) {
            addCriterion("cont_main_uid <>", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidGreaterThan(String value) {
            addCriterion("cont_main_uid >", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidGreaterThanOrEqualTo(String value) {
            addCriterion("cont_main_uid >=", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidLessThan(String value) {
            addCriterion("cont_main_uid <", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidLessThanOrEqualTo(String value) {
            addCriterion("cont_main_uid <=", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidLike(String value) {
            addCriterion("cont_main_uid like", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidNotLike(String value) {
            addCriterion("cont_main_uid not like", value, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidIn(List<String> values) {
            addCriterion("cont_main_uid in", values, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidNotIn(List<String> values) {
            addCriterion("cont_main_uid not in", values, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidBetween(String value1, String value2) {
            addCriterion("cont_main_uid between", value1, value2, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andContMainUidNotBetween(String value1, String value2) {
            addCriterion("cont_main_uid not between", value1, value2, "contMainUid");
            return (Criteria) this;
        }

        public Criteria andQuantityIsNull() {
            addCriterion("quantity is null");
            return (Criteria) this;
        }

        public Criteria andQuantityIsNotNull() {
            addCriterion("quantity is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityEqualTo(Integer value) {
            addCriterion("quantity =", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityNotEqualTo(Integer value) {
            addCriterion("quantity <>", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityGreaterThan(Integer value) {
            addCriterion("quantity >", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity >=", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityLessThan(Integer value) {
            addCriterion("quantity <", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityLessThanOrEqualTo(Integer value) {
            addCriterion("quantity <=", value, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityIn(List<Integer> values) {
            addCriterion("quantity in", values, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityNotIn(List<Integer> values) {
            addCriterion("quantity not in", values, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityBetween(Integer value1, Integer value2) {
            addCriterion("quantity between", value1, value2, "quantity");
            return (Criteria) this;
        }

        public Criteria andQuantityNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity not between", value1, value2, "quantity");
            return (Criteria) this;
        }

        public Criteria andOrderCodeIsNull() {
            addCriterion("order_code is null");
            return (Criteria) this;
        }

        public Criteria andOrderCodeIsNotNull() {
            addCriterion("order_code is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCodeEqualTo(Integer value) {
            addCriterion("order_code =", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeNotEqualTo(Integer value) {
            addCriterion("order_code <>", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeGreaterThan(Integer value) {
            addCriterion("order_code >", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_code >=", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeLessThan(Integer value) {
            addCriterion("order_code <", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeLessThanOrEqualTo(Integer value) {
            addCriterion("order_code <=", value, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeIn(List<Integer> values) {
            addCriterion("order_code in", values, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeNotIn(List<Integer> values) {
            addCriterion("order_code not in", values, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeBetween(Integer value1, Integer value2) {
            addCriterion("order_code between", value1, value2, "orderCode");
            return (Criteria) this;
        }

        public Criteria andOrderCodeNotBetween(Integer value1, Integer value2) {
            addCriterion("order_code not between", value1, value2, "orderCode");
            return (Criteria) this;
        }

        public Criteria andBomUidIsNull() {
            addCriterion("bom_uid is null");
            return (Criteria) this;
        }

        public Criteria andBomUidIsNotNull() {
            addCriterion("bom_uid is not null");
            return (Criteria) this;
        }

        public Criteria andBomUidEqualTo(String value) {
            addCriterion("bom_uid =", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidNotEqualTo(String value) {
            addCriterion("bom_uid <>", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidGreaterThan(String value) {
            addCriterion("bom_uid >", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidGreaterThanOrEqualTo(String value) {
            addCriterion("bom_uid >=", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidLessThan(String value) {
            addCriterion("bom_uid <", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidLessThanOrEqualTo(String value) {
            addCriterion("bom_uid <=", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidLike(String value) {
            addCriterion("bom_uid like", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidNotLike(String value) {
            addCriterion("bom_uid not like", value, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidIn(List<String> values) {
            addCriterion("bom_uid in", values, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidNotIn(List<String> values) {
            addCriterion("bom_uid not in", values, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidBetween(String value1, String value2) {
            addCriterion("bom_uid between", value1, value2, "bomUid");
            return (Criteria) this;
        }

        public Criteria andBomUidNotBetween(String value1, String value2) {
            addCriterion("bom_uid not between", value1, value2, "bomUid");
            return (Criteria) this;
        }

        public Criteria andSnCodeIsNull() {
            addCriterion("sn_code is null");
            return (Criteria) this;
        }

        public Criteria andSnCodeIsNotNull() {
            addCriterion("sn_code is not null");
            return (Criteria) this;
        }

        public Criteria andSnCodeEqualTo(String value) {
            addCriterion("sn_code =", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeNotEqualTo(String value) {
            addCriterion("sn_code <>", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeGreaterThan(String value) {
            addCriterion("sn_code >", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeGreaterThanOrEqualTo(String value) {
            addCriterion("sn_code >=", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeLessThan(String value) {
            addCriterion("sn_code <", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeLessThanOrEqualTo(String value) {
            addCriterion("sn_code <=", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeLike(String value) {
            addCriterion("sn_code like", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeNotLike(String value) {
            addCriterion("sn_code not like", value, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeIn(List<String> values) {
            addCriterion("sn_code in", values, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeNotIn(List<String> values) {
            addCriterion("sn_code not in", values, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeBetween(String value1, String value2) {
            addCriterion("sn_code between", value1, value2, "snCode");
            return (Criteria) this;
        }

        public Criteria andSnCodeNotBetween(String value1, String value2) {
            addCriterion("sn_code not between", value1, value2, "snCode");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(Long value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(Long value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(Long value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(Long value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(Long value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(Long value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<Long> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<Long> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(Long value1, Long value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(Long value1, Long value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andStartDateIsNull() {
            addCriterion("start_date is null");
            return (Criteria) this;
        }

        public Criteria andStartDateIsNotNull() {
            addCriterion("start_date is not null");
            return (Criteria) this;
        }

        public Criteria andStartDateEqualTo(Date value) {
            addCriterionForJDBCDate("start_date =", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("start_date <>", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateGreaterThan(Date value) {
            addCriterionForJDBCDate("start_date >", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("start_date >=", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateLessThan(Date value) {
            addCriterionForJDBCDate("start_date <", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("start_date <=", value, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateIn(List<Date> values) {
            addCriterionForJDBCDate("start_date in", values, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("start_date not in", values, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("start_date between", value1, value2, "startDate");
            return (Criteria) this;
        }

        public Criteria andStartDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("start_date not between", value1, value2, "startDate");
            return (Criteria) this;
        }

        public Criteria andEndDateIsNull() {
            addCriterion("end_date is null");
            return (Criteria) this;
        }

        public Criteria andEndDateIsNotNull() {
            addCriterion("end_date is not null");
            return (Criteria) this;
        }

        public Criteria andEndDateEqualTo(Date value) {
            addCriterionForJDBCDate("end_date =", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("end_date <>", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateGreaterThan(Date value) {
            addCriterionForJDBCDate("end_date >", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("end_date >=", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateLessThan(Date value) {
            addCriterionForJDBCDate("end_date <", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("end_date <=", value, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateIn(List<Date> values) {
            addCriterionForJDBCDate("end_date in", values, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("end_date not in", values, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("end_date between", value1, value2, "endDate");
            return (Criteria) this;
        }

        public Criteria andEndDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("end_date not between", value1, value2, "endDate");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andStkMainUidIsNull() {
            addCriterion("stk_main_uid is null");
            return (Criteria) this;
        }

        public Criteria andStkMainUidIsNotNull() {
            addCriterion("stk_main_uid is not null");
            return (Criteria) this;
        }

        public Criteria andStkMainUidEqualTo(String value) {
            addCriterion("stk_main_uid =", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidNotEqualTo(String value) {
            addCriterion("stk_main_uid <>", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidGreaterThan(String value) {
            addCriterion("stk_main_uid >", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidGreaterThanOrEqualTo(String value) {
            addCriterion("stk_main_uid >=", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidLessThan(String value) {
            addCriterion("stk_main_uid <", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidLessThanOrEqualTo(String value) {
            addCriterion("stk_main_uid <=", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidLike(String value) {
            addCriterion("stk_main_uid like", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidNotLike(String value) {
            addCriterion("stk_main_uid not like", value, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidIn(List<String> values) {
            addCriterion("stk_main_uid in", values, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidNotIn(List<String> values) {
            addCriterion("stk_main_uid not in", values, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidBetween(String value1, String value2) {
            addCriterion("stk_main_uid between", value1, value2, "stkMainUid");
            return (Criteria) this;
        }

        public Criteria andStkMainUidNotBetween(String value1, String value2) {
            addCriterion("stk_main_uid not between", value1, value2, "stkMainUid");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}